import axios from "axios";


// 默认的请求配置
const defaultConfig = {
    // 基准路径
    baseURL: "https://help.nongkeyu.com",
    // 请求超时时间，毫秒单位
    timeout: 10 * 1000,
};

class Request {
    constructor(config) {
        // 使用 config 配置创建一个 axios 实例
        this.instance = axios.create(config);
    }

    /**
     * 发起 GET 请求
     * @param {string} url 请求路径
     * @param {object} params 请求参数
     * @param {object} config axios 配置
     * @returns {Promise} 返回 Promise 对象
     */
    get(url, params = {}, config = {}) {
        return this.instance.get(url, {
            ...config,
            params,
        });
    }

    /**
     * 发起 POST 请求
     * @param {string} url 请求路径
     * @param {object} params 请求参数
     * @param {object} config axios 配置
     * @returns {Promise} 返回 Promise 对象
     */
    post(url, params = {}, config = {}) {
        return this.instance.post(url, params, {
            ...config,
        });
    }
}

// 默认导出 Request 类的实例
export default new Request(defaultConfig);